package com.sdgakj.quartz;

import com.sdgakj.entity.Person;
import com.sdgakj.service.family.FamilyService;
import com.sdgakj.service.person.PersonService;
import org.springframework.beans.factory.annotation.Autowired;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

/**
 * Created by win10 on 2017/6/5.
 */
public class Plan {

    private PersonService personService=new PersonService();
    private FamilyService familyService=new FamilyService();

    public  void work(){
        //获取所有家族
        /*Person person=personService.getPersonByFamilyId(id, id);*/
/*        while(true) {
            if(person.getF()!=0) {
                person = personService.getPersonByFamilyId(1L, id);//找第一世
            }else {
                System.out.println(person.getF());
                break;
            }
        }*/
      /* for(int j=0;j<list.size();j++){
                if(j<20){
                    familyList.add(list.get(j));//每一页20人！
                    //图片内的context参数
                    ChartGraphics cgp=new ChartGraphics();
                    cgp.graphicsGeneration(familyList);

                }else {
                    familyList=null;
                    num++;
                }
            }*/
        //person是第一世.
        //找该家族的第二世
        //list=personService.getPersonByFatherId(person.getId());//第二世的数据
        //第三世、第四世、第五世。。。
        /*for(int i=0;i<list.size();i++){
            //循环找 集合的孩子
            list = personService.getPersonByFatherId(list.get(i).getId());

        }*/
        //家族所有人
        List<Person> personList= personService.getPersonsByFId(1L);
        //应该写几页的图片
        int page=personList.size()%20==0?personList.size()%20:personList.size()%20+1;
        //当前生成的页面
        int index=1;
        //一页码20人
        List<Person> list=new ArrayList<>();
        //循环添加
        for(Person person:personList){
            //判断父亲id是0的表示始祖
            if(person.getF()==0){
                list.add(person);
            }else if(list.size()<20){
                list.add(person);
            }else {
                //清空集合内容，生成页码加1.
                list=null;
                index++;
            }
        }
        //生成图片
        ChartGraphics graphics=new ChartGraphics();
        graphics.graphicsGeneration(list,index);


    }
   /* public List<Person> next(List<Person> personList){
        List<Person> list=new ArrayList<>();
        for (int i=0;i<personList.size();i++){
            Person person=new Person();
            person=personList.get(i);
            list=personService.getPersonByFatherId(person.getId());

        }
        return next(list);
    }*/
}
